package net.util;

import java.text.SimpleDateFormat;
import java.util.Date;

import javax.servlet.ServletContext;

import net.vo.ProValues;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionContext;


public class Tools implements ProValues{
	
	public static boolean empty(Object obj){
		if(obj == null) return true;
		return false;
	}
	
	/**
	 * 获取根目录绝对地址
	 * @return
	 */
	public static String getPath(){
		String classpath = System.getProperty("java.class.path").split(";")[0];
		if(classpath.lastIndexOf(SEPARATOR) == classpath.length() - 1)
			return classpath.split(";")[0];
		return classpath.split(";")[0] + SEPARATOR;
	}
	
	public static String getWebPath(){
		ActionContext ac = ActionContext.getContext();
        ServletContext sc = (ServletContext) ac.get(ServletActionContext.SERVLET_CONTEXT);
		return sc.getRealPath("/");
	}
	
	/**
	 * 得到当前时间秒数
	 * @return
	 */
	public static int getTime(){
		return (int)new Date().getTime() / 1000;
	}

	/**
	 * 得到现在的时间 
	 * @param str 格式
	 * @return
	 */
	public static String getNowTime(String str) {
		SimpleDateFormat formater = new SimpleDateFormat(str);
		return formater.format(new Date());
	}
	
	/**
	 * 时间转换
	 * @param date 时间
	 * @param str 格式
	 * @return
	 */
	public static String DateTransact(Date date,String str) {
		SimpleDateFormat formater = new SimpleDateFormat(str);
		return formater.format(date);
	}

	/**
	 * 字符编码格式转换 (处理乱码问题)
	 * @param str 做处理的字符
	 * @return
	 * @throws Exception
	 */
	public static String tranString(String str){
		try {
			return new String(str.getBytes("iso-8859-1"), "utf-8");
		} catch (Exception e) {
			System.out.println("字符格式转换失败" + e);
		}
		return str;
	}
	
	/**
	 * 字符串首字母大小写转换
	 * @param str 字符串
	 * @param t
	 * @return
	 */
	public static String strFristTransact(String str,String t){
		if("U".equalsIgnoreCase(t))
			return str.replaceFirst(str.substring(0, 1), str.substring(0, 1).toUpperCase());
		if("L".equalsIgnoreCase(t))
			return str.replaceFirst(str.substring(0, 1), str.substring(0, 1).toLowerCase());
		return str;
	}

}
